Prior to the advent and prolific use of distributed network environments such as the Internet, customer service sessions typically occurred over a teleconference between a customer service agent and a customer. These teleconferences, which incidentally are still very popular today, are initiated by a customer placing a phone call to a customer service agent. The customer service agent's phone receives the call through a public-switched telephone network (PTSN). Many call centers handle a large volume of inquiries, usually by phone, for sales, information, customer support and other services. Typical call centers provide the ability to route multiple incoming, customer-initiated calls to agents which provide sales, information, or support on behalf of an entity interested in establishing or maintaining a relationship with the customer.
Modern call center systems selectively route incoming calls based on a number of factors such as the number called or dialed, the originating number, the queued sequence of the caller, the geographic location of the caller, accumulated caller history, and other relevant criteria. Once the system has evaluated the inbound caller's information, if any, the system searches for an available agent to service the call. Availability of agents may be dependent on any number of factors such as a skill level or a schedule of the agent. The number of agents within the contact center and available to the system may often be limited by the physical space available for the agents to operate. Contact centers have to deal with a limited number of agents to handle a large number of incoming customer calls.
As the Internet is getting more popular, customer service providers now provide for computer-based customer service interaction by way of the World Wide Web. Instead of initiating a customer service session by using the phone, customers may access a website and engage in a web-based customer service session to make inquiries (e.g., technical support) and/or perform tasks (e.g., paying bills). Web-based customer service sessions offer numerous advantages over teleconference-based sessions. For example, the graphical user interface of web-based customer service applications permit customers to view illustrations or written explanations and thus ameliorate the miscommunications which may arise with oral conversations between a customer service agent and a customer.
Further, web-based customer service sessions enable a customer to directly target his/her needs on the website and thus reduce the time expended both in navigating through a series of vocal menu choices inapplicable to the consumer's particular needs and in waiting to speak to a service agent. Significantly, web-based customer service sessions are particularly cost-effective for the customer service provider given that fewer agents are required to communicate with customers. Indeed, customers are provided functionality for finding answers to their questions or performing tasks without any help from a live agent. These customer service sessions may be entirely computer-based or, alternatively, involve interaction with a customer service agent.
While there are advantages to performing customer service sessions over the web or other distributed network environments, there has been a lack of efficient platforms to take full advantage of today's technologies, particularly, the mobile technologies. In order to obtain customer support from a support center, the customer is still required to take many steps of manual processes such as a complicated process for registering a product. While there are many ways (e.g., email, chat, voice) to communicate between a customer and an agent, there has been a lack of an efficient mechanism to provide the customer the best available and cost effective communication channels to an agent.
In addition, the availability of information of a knowledgebase (KB) associated with a product of a vendor is limited to an agent who specifically handles that product for the vendor. Often a support issue of a product may involve multiple components from multiple vendors. There has been a lack of an efficient way to share certain knowledge across multiple vendors without jeopardizing the safety of confidential information of the vendors. Furthermore, a customer typically has to initiate a support call to the support center and the support center provides support services to the customer by responding to the support call. There has been a lack of an efficient way to provide proactive support services to a customer.